Section: Research Program
Constraint Solving Techniques
Constraint propagation algorithms use constraints actively during search for filtering the domains of variables and reducing the search space. These domain reductions are the only way constraints communicate between each other. Our research involves different constraint domains, namely:
-
finite domains (bounded natural numbers): membership, arithmetic, reified, higher order and global constraints;
-
reals: polyhedral libraries for linear constraints and interval methods;
-
graphs: subgraph epimorphism (SEPI) and isomorphism constraints; acyclicity constraint;
-
Kripke structures: temporal logic constraints (first-order Computation Tree Logic constraints over the reals).
We develop new constraints and domain filtering algorithms by using already existing constraint solving algorithms and implementations. For instance, we use the Parma Polyhedra Library PPL with its interface with Prolog for solving temporal logic constraints over the reals. Similarly, we use standard finite domain constraints for developing solvers for the new SEPI graph constraint.